【消息中间件】RocketMQ服务中的端口号

您所在的位置:网站首页 监听 端口 【消息中间件】RocketMQ服务中的端口号

【消息中间件】RocketMQ服务中的端口号

2023-10-15 16:10| 来源: 网络整理| 查看: 265

背景说明

场景一、 部署RocketMQ集群时,启动Broker报错:

org.apache.rocketmq.remoting.exception.RemotingConnectException: connect to failed

场景二、一台服务器部署RocketMQ集群,Broker的监听端口配置连续时,启动其中一个Broker报错: 在这里插入图片描述

问题说明

场景一问题原因是:防火墙开启,端口未开放 场景二问题原因是:端口冲突,重复占用 由此引发的思考: 1)我们看到的配置只有listenPort这一个配置参数,为什么Broker启动后,却要占用2+呢? 2)我们做防火墙端口策略开放,需要开放哪几个端口呢?

端口说明 NameServer中的端口

namesrv仅使用了一个9876端口。 如果想修改默认端口,可以参考文章:修改RocketMQ的NameServer端口

RocketMQ-Console中的端口

rocketmq-console作为RocketMQ管理平台,也仅占用1个端口,修改方式有两种: 1)启动时,通过命令行参数server.port指定:

java -jar rocketmq-console-ng-2.0.0.jar --server.port=8080 --rocketmq.config.namesrvAddr=127.0.0.1:9876

2)下载RocketMQ-Externals源码,修改yaml文件中的server.port参数,再行打包即可:

cd rocketmq-console vim src/main/resources/application.properties # 修改访问端口 server.port=8080

打包,启动即可:

mvn clean package -Dmaven.test.skip=true java -jar rocketmq-console-ng-2.0.0.jar --rocketmq.config.namesrvAddr=127.0.0.1:9876 RocketMQ-Broker中的端口 listenPort

listenPort参数是broker的监听端口号,是remotingServer服务组件使用,作为对Producer和Consumer提供服务的端口号,默认为10911,可以通过配置文件修改。 打开broker-x.conf,修改或增加listenPort参数:

#Broker 对外服务的监听端口 listenPort=10911 fastListenPort

fastListenPort参数是fastRemotingServer服务组件使用,默认为listenPort - 2,可以通过配置文件修改。 打开broker-x.conf,修改或增加fastListenPort参数:

#主要用于slave同步master fastListenPort=10909 haListenPort

haListenPort参数是HAService服务组件使用,用于Broker的主从同步,默认为listenPort - 1,可以通过配置文件修改。 打开broker-x.conf,修改或增加haListenPort参数:

#haService中使用 haListenPort=10912 其他

remotingServer和fastRemotingServer的区别: Broker端: remotingServer可以处理客户端所有请求,如:生产者发送消息的请求,消费者拉取消息的请求。fastRemotingServer功能基本与remotingServer相同,唯一不同的是不可以处理消费者拉取消息的请求。Broker在向NameServer注册时,只会上报remotingServer监听的listenPort端口。

客户端: 默认情况下,生产者发送消息是请求fastRemotingServer,我们也可以通过配置让其请求remotingServer;消费者拉取消息只能请求remotingServer。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3